socket编程之获取客户端和服务端ip |
您所在的位置:网站首页 › php 获取客户端和服务器端ip › socket编程之获取客户端和服务端ip |
1. getsockname和getpeername函数
getsockname函数用于获取与某个套接字关联的本地协议地址 getpeername函数用于获取与某个套接字关联的外地协议地址 定义如下: #include int getsockname(int sockfd, struct sockaddr *localaddr, socklen_t *addrlen); int getpeername(int sockfd, struct sockaddr *peeraddr, socklen_t *addrlen); 对于这两个函数,如果函数调用成功,则返回0,如果调用出错,则返回-1。 使用这两个函数,我们可以通过套接字描述符来获取自己的IP地址和连接对端的IP地址,如在未调用bind函数的TCP客户端程序上,可以通过调用getsockname()函数获取由内核赋予该连接的本地IP地址和本地端口号,还可以在TCP的服务器端accept成功后,通过getpeername()函数来获取当前连接的客户端的IP地址和端口号。 2. 示例程序2.1 服务端示例 #define MAXLINE 4096 #define PORT 6563 #define LISTENQ 1024 #define BUFFER_SIZE 4096 #include #include #include #include #include #include #include #include #include int |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |